草庐IT

MongoDB 复合分片键

全部标签

mongodb - 如何使用 mongo-hadoop 从 Pig 上的 BSON 文件加载数组?

我正在尝试使用com.mongodb.hadoop.pig.BSONLoader(https://github.com/mongodb/mongo-hadoop/blob/master/pig/README.md)将数据从MongoDBBSON文件加载到Pig中,但我遇到了困难。MongoDB上的数据包括可变大小的数组,我不确定如何将其加载到pig中(作为元组?)。这是来自MongoDB的示例记录:{"_id":{"$oid":"52fbbca6e4b029a79cd17ff7"},"field":"value","variableSizeArray":["value1","value

ElasticSearch 复合查询 Boolean Query

官网文档网址:Booleanquery|ElasticsearchGuide[7.17]|Elastic目录复合查询BooleanQuery利用bool查询实现功能 总结 复合查询BooleanQuery布尔查询是一个或多个查询子句的组合。子查询的组合方式有:must:必须匹配每个子查询,类似“与should:选择性匹配子查询,类似“或”mustnot:必须不匹配,不参与算分,类似“非filter:必须匹配,不参与算分利用bool查询实现功能案例:搜索名字包含“如家”,价格不高于400,在坐标31.21121.5周围10km范围内的酒店GET  /hotel/_search{        "

mongodb - Hbase 数据应该如何才能快速查询响应?

我的情况符合以下规则:一个用户一次只能在一个地点。如果用户A在地点X签到,然后在fieldY,他们不再在fieldX。签到最多只能“持续”3小时。如果用户A在地点X签到然后3小时内什么都没有,他们不再在地点X。数据将使用Kafka和spark-streaming解析到HBase。我想使用HBase,TTL为3小时,版本控制为1,满足上述条件。问题是我很困惑如何在HBase中组织数据以获得更快的查询响应,我应该使用具有field名称或field名称的单个列作为不同的列名称吗?哪个更好,为什么?需要执行的查询是:1.用户A现在在哪里?2.现在X地点有哪些用户?

MongoDB发现与条件的不同计数

如何在MongoDB中选择。Selectroom(distinct),count(whereread=1)fromchatwherefrom="1"orto="1"这是我的JSON{"_id":ObjectId("595da6052008fc2213db32f6"),"room":"1_40","from":"1","to":"40","user_name":"TranCot","mes":"hgfd","time":1499309573832,"read":1}看答案如果您想为每个房间的总读取消息。利用聚合更新db.chat.aggregate([{$match:{$or:[{from:"4

如何使用MongoDB收集输出作为变量

我能够使用Ansible打印MongoDB数据。但是这里我的要求是将印刷数据用作Ansible中的变量。这是我将获得AnsiblePlaybook输出的输出:这是我的剧本。----hosts:localhostvars:-i:"db.repo.find({$and:[{'product':'Admin'},{'env':'SHK'}]}).pretty()"tasks:-name:Printingtheretrieveddatacommand:mongoAdvantage--quiet--eval"{{i}}"register:temp-name:Printingtheretrieveddat

mongodb - Spark with Mongo DB : java. lang.IncompatibleClassChangeError:实现类

我正在尝试使用Scala将示例MongoDB集合加载到Spark,然后将RDD保存到文本文件。以下是我的代码:valsc=newSparkContext(conf)valmongoConfig=newConfiguration()mongoConfig.set("mongo.input.uri","mongodb://localhost:27017/myDB.myCollectionData")valsparkConf=newSparkConf()valdocuments=sc.newAPIHadoopRDD(mongoConfig,//ConfigurationclassOf[Mon

mongodb - 无法在 HDP 的 Hive 查询中使用 mongo-hadoop 连接器

我是hadoop的新手。我已经安装了hortonworks沙箱2.1。我正在尝试使用HiveUI执行Hive脚本。我想访问Hive中的mongo集合。我为此使用了以下查询:CREATETABLEindividuals(idINT,nameSTRING,ageINT,citySTRING,hobbySTRING)STOREDBY'com.mongodb.hadoop.hive.MongoStorageHandler'WITHSERDEPROPERTIES('mongo.columns.mapping'='{"id":"_id"}')TBLPROPERTIES('mongo.uri'='m

hadoop - 使用复合键时遍历值时部分键发生变化 - Hadoop

我已经在Hadoop上实现了Secondarysort,但我并不真正了解该框架的行为。我创建了一个组合键,其中包含原始键和部分值,用于排序。为此我实现了自己的分区器publicclassCustomPartitionerextendsPartitioner{@OverridepublicintgetPartition(CoupleAsKeycouple,LongWritablevalue,intnumPartitions){returnLong.hashCode(couple.getKey1())%numPartitions;}我自己的组比较器publicclassGroupCompa

mongodb - 限制选择查询批量大小

我正在使用MongoToolrunner将数据从mongoDB导入到Hadoopmapreduce作业。由于数据的大小,我收到OutOfMemoryError。所以我想限制我以批量方式获取的记录数。MongoConfigUtil.setQuery()只能设置查询但我不能设置大小来限制获取的记录数。我正在寻找的是类似MongoConfigUtil.setBatchSize()接着MongoConfigUtil.getNextBatch()类似的东西。请提出建议。 最佳答案 您可以使用类MongoInputSplit的setLimit方

mongodb - 带有 $date 的 mongo.input.query 不过滤输入到 hadoop

我有一个分片输入集合,我想在将其发送到我的hadoop集群以进行mapreduce计算之前对其进行过滤。我的$hadoopjar-命令中有这个参数mongo.input.query='{_id.uuid:"device-964693"}'并且有效。输出不会mapreduce任何不满足此查询的数据。但这不起作用:mongo.input.query='{_id.day:{\\$lt:{\\$date:1388620740000}}}'没有数据作为输出产生。1388620740000表示日期WedJan01201423:59:00GMT+0000(GMT)。该设置使用的是hadoop2.2、